class Ocupacao < ActiveRecord::Base
  before_save :reformar_dados
  before_update :reformar_dados

  validates_presence_of :codigo, :nome, :codigo_grupo_ocupacao, :nome_grupo_ocupacao, :situacao
  validates_uniqueness_of :codigo, :nome, :codigo_grupo_ocupacao, :nome_grupo_ocupacao

  validates_length_of :codigo, :in => 1..3, :message => "de tamanho excedido"
  validates_length_of :nome, :in => 1..160, :message => "de tamanho excedido"
  validates_length_of :codigo_grupo_ocupacao, :in => 1..2, :message => "de tamanho excedido"
  validates_length_of :nome_grupo_ocupacao, :in => 1..128, :message => "de tamanho excedido"

  def reformar_dados
    self.codigo.strip!
    self.codigo.upcase!
    self.codigo.squish!
    self.nome.strip!
    self.nome.upcase!
    self.nome.squish!
    self.codigo_grupo_ocupacao.strip!
    self.codigo_grupo_ocupacao.upcase!
    self.codigo_grupo_ocupacao.squish!
    self.nome_grupo_ocupacao.strip!
    self.nome_grupo_ocupacao.upcase!
    self.nome_grupo_ocupacao.squish!
  end
end